A Comparison of Three Occur-Check Analysers

نویسندگان

  • Lobel Crnogorac
  • Andrew D. Kelly
  • Harald Søndergaard
چکیده

A well known problem of most Prolog interpreters and compilers is the lack of occur-check in the implementation of the uniication algorithm. This means that such systems are unsound with respect to rst-order predicate logic. Static analysis ooers an appealing approach to the problem of occur-check reduction, that is, how to safely omit occur-checks in uniication. We compare, for the rst time, three static methods that have been suggested for occur-check reduction, two based on assigning \modes" to programs and one which uses abstract interpretation. In each case, the analysis or some essential part of it had not been implemented so far. Of the mode-based methods, one is due to Chadha and Plaisted and the other is due to Apt and Pellegrini. The method using abstract interpretation is based on earlier work by Plaisted, SSndergaard and others who have developed \groundness" and \sharing" analyses for logic programs. The conclusion is that a truly global analysis based on abstract interpretation leads to markedly higher precision and hence fewer occur-checks at run-time. The analysis is a compile-time investment, and given the potential run-time speedups, a precise analysis would be well worth the extra time. Abstract A well known problem of most Prolog interpreters and compilers is the lack of occur-check in the implementation of the uniication algorithm. This means that such systems are unsound with respect to rst-order predicate logic. Static analysis ooers an appealing approach to the problem of occur-check reduction, that is, how to safely omit occur-checks in uniication. We compare, for the rst time, three static methods that have been suggested for occur-check reduction, two based on assigning \modes" to programs and one which uses abstract interpretation. In each case, the analysis or some essential part of it had not been implemented so far. Of the mode-based methods, one is due to Chadha and Plaisted and the other is due to Apt and Pellegrini. The method using abstract interpretation is based on earlier work by Plaisted, SSndergaard and others who have developed \groundness" and \sharing" analyses for logic programs. The conclusion is that a truly global analysis based on abstract interpretation leads to markedly higher precision and hence fewer occur-checks at run-time. The analysis is a compile-time investment, and given the potential run-time speedups, a precise analysis would be well worth the extra time.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Inter-Instrument Comparison of Bioimpedance Spectroscopic Analysers

Three commercially available bioimpedance spectroscopy analysers were compared for technical performance and for their design purpose of prediction of body composition. All three analysers were electronically stable, remaining in calibration over a year, and provided highly reproducible (coefficients of variation < 0.5%) and accurate (within 0.5% of component values) measurements of impedances ...

متن کامل

Evaluation of fractal properties of different layers sedimentation behind the check dam

In this research, fractal relationships were used to evaluate the particle size distribution of the check dam. Three check dams with height of 2, 2 and 2.6 meters were selected and the hole was drilled same the height of the check dam at the sediment deposits. Then, depending on the color of the deposited layers, the thickness of the layers was determined and sampling was down from each layer t...

متن کامل

Better Termination for Prolog with Constraints

Termination properties of actual Prolog systems with constraints are fragile and difficult to analyse. The lack of the occurs-check, moded and overloaded arithmetical evaluation via is/2 and the occasional nontermination of finite domain constraints are all sources for invalidating termination results obtained by current termination analysers that rely on idealized assumptions. In this paper, w...

متن کامل

Automation in urinalysis: evaluation of three urine test strip analysers

A clinical laboratory evaluation was conducted on the Clinitek Auto 2000, the Super Aution Analyzer and the Urotron RL9 for the determination of glucose, protein, pH, blood, ketone-bodies and bilirubin.Precision of the systems was tested using three commercial control urine materials, and reported as the percentage of times the instrument repeats a certain value. Good repeatability was obtained...

متن کامل

An end-tidal sampler for use with slow response analysers during anaesthesia.

An end-tidal sampler is described which can be used during anaesthesia with spontaneous respiration at rates of at least 60 b.p.m. It can be used with slow response analysers such as refractometers and fuel cells to indicate end-tidal concentrations. It can also be used to extend the scope of those breath-to-breath analysers which have a response time which is too slow for the respiratory rates...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1996